Test-driven development (TDD) ไม่ได้หมายถึง Test ดีดี ...นะครับ
.
มันเป็นเทคนิคพัฒนาโปรแกรม ที่ไม่ได้เริ่มจากเขียนโปรแกรมเสร็จแล้วมานั่งเขียน unit test ภายหลัง
.
แต่จะกลับด้านกันก็คือ เตรียมโค้ดสำหรับ Test ตาม requirement หรือตามเสปคก่อน ให้มาครอบการพัฒนาโปรแกรมอีกที
.
ข้อดีวิธีนี้คือ
1) แก้ไขโค้ดได้ง่าย
2) ง่ายต่อการ debug
3) สามารถเขียนโค้ดที่จำเป็น
ตรงตาม Requirement หรือตามสเปค
4) สามารถทำ automated test ได้ง่าย ....test ซ้ำๆ ได้สะดวก
5) สามารถ test ได้ครอบคลุมทุกกรณี
6) ง่ายต่อการ Refactoring Code
.
ข้อเสียก็มี
TDD หลายคนอาจไม่ชิน แถมอาจชักช้าในตอนแรก เพราะต้องมานั่งเขียน test ครอบก่อน
+++++
ใครสนใจก็ดูรายละเอียดเรื่องนี้จาก youtube ของคุณ Saladpuk ได้เลยครับ